#ifndef     AUDIO_ENGINE_2018
#define     AUDIO_ENGINE_2018

#include    <map>

#include    "../../../external/fmod/include/fmod.hpp"


class AudioEngine
{
private:
    AudioEngine();
    ~AudioEngine();

    static AudioEngine* EnginInstance;
private:
    FMOD_SYSTEM* fmodSystem;
    bool initFlag;

    std::map<std::string,FMOD_SOUND*> m_sounds;
public:
    bool initAudioEngin();
    bool shutdownAudioEngin();

    bool loadSound(const char* soundfile,std::string& soundName);
    bool playSound(std::string& soundName);

public:
    static AudioEngine* getInstance();
    static void createInstance();
    static void releaseInstance();
};




#endif // AUDIO_ENGINE_2018
